package com.ruoyi.ryzs.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.*;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.springframework.validation.annotation.Validated;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import java.util.Date;

/**
 * 人鱼助手对象 business_ryzs
 *
 * @author nanqiang
 * @date 2022-06-07
 */
@EqualsAndHashCode(callSuper = true)
@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
public class BusinessRyzs extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** id */
    @TableId(type = IdType.AUTO)
    private Long id;
    /** 账号 */
    @Excel(name = "账号")
    private String account;
    /** 密码 */
    @Excel(name = "密码")
    private String passWord;
    /** 搜索id */
    @Excel(name = "搜索id")
    private String userSelectId;
    /** 积分 */
    @Excel(name = "积分")
    private String integration;
    /** 用户类型 */
    @Excel(name = "用户类型")
    private String userType;
    /** 最新签到时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    @Excel(name = "最新签到时间")
    private Date signInTime;
    /** 累计签到天数 */
    @Excel(name = "累计签到天数")
    private Integer signInDays;


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("account", getAccount())
            .append("passWord", getPassWord())
            .append("userSelectId", getUserSelectId())
            .append("integration", getIntegration())
            .append("userType", getUserType())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("deleted", getDeleted())
            .append("signInTime", getSignInTime())
            .append("signInDays", getSignInDays())
        .toString();
    }
}
